<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">

<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>mxPanningHandler</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>

<!--  Generated by Natural Docs, version 1.51 -->
<!--  http://www.naturaldocs.org  -->

<!-- saved from url=(0026)http://www.naturaldocs.org -->




<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="mxPanningHandler"></a>mxPanningHandler</h1><div class=CBody><p>Event handler that pans and creates popupmenus.&nbsp; To use the left mousebutton for panning without interfering with cell moving and resizing, use &lt;isUseLeftButton&gt; and &lt;isIgnoreCell&gt;.&nbsp; For grid size steps while panning, use <a href="#mxPanningHandler.useGrid" class=LVariable id=link42 onMouseOver="ShowTip(event, 'tt9', 'link42')" onMouseOut="HideTip('tt9')">useGrid</a>.&nbsp; This handler is built-into &lt;mxGraph.panningHandler&gt; and enabled using <a href="../view/mxGraph-js.html#mxGraph.setPanning" class=LFunction id=link43 onMouseOver="ShowTip(event, 'tt35', 'link43')" onMouseOut="HideTip('tt35')">mxGraph.setPanning</a>.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#mxPanningHandler" >mxPanningHandler</a></td><td class=SDescription>Event handler that pans and creates popupmenus. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#mxPanningHandler.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.mxPanningHandler" >mxPanningHandler</a></td><td class=SDescription>Constructs an event handler that creates a <a href="../util/mxPopupMenu-js.html#mxPopupMenu" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">mxPopupMenu</a> and pans the graph.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#mxPanningHandler.Events" >Events</a></td><td class=SDescription></td></tr><tr class="SEvent SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.mxEvent.PAN_START" >mxEvent.<wbr>PAN_START</a></td><td class=SDescription>Fires when the panning handler changes its &lt;active&gt; state to true. </td></tr><tr class="SEvent SIndent2"><td class=SEntry><a href="#mxPanningHandler.mxEvent.PAN" >mxEvent.PAN</a></td><td class=SDescription>Fires while handle is processing events. </td></tr><tr class="SEvent SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.mxEvent.PAN_END" >mxEvent.<wbr>PAN_END</a></td><td class=SDescription>Fires when the panning handler changes its &lt;active&gt; state to false. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#mxPanningHandler.Variables" >Variables</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.graph" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">graph</a></td><td class=SDescription>Reference to the enclosing <a href="../view/mxGraph-js.html#mxGraph" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">mxGraph</a>.</td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxPanningHandler.useLeftButtonForPanning" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">useLeftButtonForPanning</a></td><td class=SDescription>Specifies if panning should be active for the left mouse button. </td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.usePopupTrigger" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">usePopupTrigger</a></td><td class=SDescription>Specifies if <a href="../util/mxEvent-js.html#mxEvent.isPopupTrigger" class=LFunction id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">mxEvent.isPopupTrigger</a> should also be used for panning.</td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxPanningHandler.ignoreCell" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">ignoreCell</a></td><td class=SDescription>Specifies if panning should be active even if there is a cell under the mousepointer. </td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.previewEnabled" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">previewEnabled</a></td><td class=SDescription>Specifies if the panning should be previewed. </td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxPanningHandler.useGrid" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">useGrid</a></td><td class=SDescription>Specifies if the panning steps should be aligned to the grid size. </td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.panningEnabled" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">panningEnabled</a></td><td class=SDescription>Specifies if panning should be enabled. </td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxPanningHandler.pinchEnabled" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">pinchEnabled</a></td><td class=SDescription>Specifies if pinch gestures should be handled as zoom. </td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.maxScale" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">maxScale</a></td><td class=SDescription>Specifies the maximum scale. </td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxPanningHandler.minScale" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">minScale</a></td><td class=SDescription>Specifies the minimum scale. </td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.dx" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">dx</a></td><td class=SDescription>Holds the current horizontal offset.</td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxPanningHandler.dy" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">dy</a></td><td class=SDescription>Holds the current vertical offset.</td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.startX" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">startX</a></td><td class=SDescription>Holds the x-coordinate of the start point.</td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxPanningHandler.startY" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')">startY</a></td><td class=SDescription>Holds the y-coordinate of the start point.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#mxPanningHandler.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.isActive" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')">isActive</a></td><td class=SDescription>Returns true if the handler is currently active.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxPanningHandler.isPanningEnabled" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')">isPanningEnabled</a></td><td class=SDescription>Returns <a href="#mxPanningHandler.panningEnabled" class=LVariable id=link20 onMouseOver="ShowTip(event, 'tt10', 'link20')" onMouseOut="HideTip('tt10')">panningEnabled</a>.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.setPanningEnabled" id=link21 onMouseOver="ShowTip(event, 'tt20', 'link21')" onMouseOut="HideTip('tt20')">setPanningEnabled</a></td><td class=SDescription>Sets <a href="#mxPanningHandler.panningEnabled" class=LVariable id=link22 onMouseOver="ShowTip(event, 'tt10', 'link22')" onMouseOut="HideTip('tt10')">panningEnabled</a>.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxPanningHandler.isPinchEnabled" id=link23 onMouseOver="ShowTip(event, 'tt21', 'link23')" onMouseOut="HideTip('tt21')">isPinchEnabled</a></td><td class=SDescription>Returns <a href="#mxPanningHandler.pinchEnabled" class=LVariable id=link24 onMouseOver="ShowTip(event, 'tt11', 'link24')" onMouseOut="HideTip('tt11')">pinchEnabled</a>.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.setPinchEnabled" id=link25 onMouseOver="ShowTip(event, 'tt22', 'link25')" onMouseOut="HideTip('tt22')">setPinchEnabled</a></td><td class=SDescription>Sets <a href="#mxPanningHandler.pinchEnabled" class=LVariable id=link26 onMouseOver="ShowTip(event, 'tt11', 'link26')" onMouseOut="HideTip('tt11')">pinchEnabled</a>.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxPanningHandler.isPanningTrigger" id=link27 onMouseOver="ShowTip(event, 'tt23', 'link27')" onMouseOut="HideTip('tt23')">isPanningTrigger</a></td><td class=SDescription>Returns true if the given event is a panning trigger for the optional given cell. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.isForcePanningEvent" id=link28 onMouseOver="ShowTip(event, 'tt24', 'link28')" onMouseOut="HideTip('tt24')">isForcePanningEvent</a></td><td class=SDescription>Returns true if the given <a href="../util/mxMouseEvent-js.html#mxMouseEvent" class=LClass id=link29 onMouseOver="ShowTip(event, 'tt25', 'link29')" onMouseOut="HideTip('tt25')">mxMouseEvent</a> should start panning. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxPanningHandler.mouseDown" id=link30 onMouseOver="ShowTip(event, 'tt26', 'link30')" onMouseOut="HideTip('tt26')">mouseDown</a></td><td class=SDescription>Handles the event by initiating the panning. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.start" id=link31 onMouseOver="ShowTip(event, 'tt27', 'link31')" onMouseOut="HideTip('tt27')">start</a></td><td class=SDescription>Starts panning at the given event.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxPanningHandler.consumePanningTrigger" id=link32 onMouseOver="ShowTip(event, 'tt28', 'link32')" onMouseOut="HideTip('tt28')">consumePanningTrigger</a></td><td class=SDescription>Consumes the given <a href="../util/mxMouseEvent-js.html#mxMouseEvent" class=LClass id=link33 onMouseOver="ShowTip(event, 'tt25', 'link33')" onMouseOut="HideTip('tt25')">mxMouseEvent</a> if it was a panning trigger in <a href="#mxPanningHandler.mouseDown" class=LFunction id=link34 onMouseOver="ShowTip(event, 'tt26', 'link34')" onMouseOut="HideTip('tt26')">mouseDown</a>. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.mouseMove" id=link35 onMouseOver="ShowTip(event, 'tt29', 'link35')" onMouseOut="HideTip('tt29')">mouseMove</a></td><td class=SDescription>Handles the event by updating the panning on the graph.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxPanningHandler.mouseUp" id=link36 onMouseOver="ShowTip(event, 'tt30', 'link36')" onMouseOut="HideTip('tt30')">mouseUp</a></td><td class=SDescription>Handles the event by setting the translation on the view or showing the popupmenu.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.zoomGraph" id=link37 onMouseOver="ShowTip(event, 'tt31', 'link37')" onMouseOut="HideTip('tt31')">zoomGraph</a></td><td class=SDescription>Zooms the graph to the given value and consumed the event if needed.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxPanningHandler.reset" id=link38 onMouseOver="ShowTip(event, 'tt32', 'link38')" onMouseOut="HideTip('tt32')">reset</a></td><td class=SDescription>Resets the state of this handler.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxPanningHandler.panGraph" id=link39 onMouseOver="ShowTip(event, 'tt33', 'link39')" onMouseOut="HideTip('tt33')">panGraph</a></td><td class=SDescription>Pans <a href="#mxPanningHandler.graph" class=LVariable id=link40 onMouseOver="ShowTip(event, 'tt2', 'link40')" onMouseOut="HideTip('tt2')">graph</a> by the given amount.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#mxPanningHandler.destroy" id=link41 onMouseOver="ShowTip(event, 'tt34', 'link41')" onMouseOut="HideTip('tt34')">destroy</a></td><td class=SDescription>Destroys the handler and all its resources and DOM nodes.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.Functions"></a>Functions</h3></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.mxPanningHandler"></a>mxPanningHandler</h3><div class=CBody><p>Constructs an event handler that creates a <a href="../util/mxPopupMenu-js.html#mxPopupMenu" class=LClass id=link44 onMouseOver="ShowTip(event, 'tt1', 'link44')" onMouseOut="HideTip('tt1')">mxPopupMenu</a> and pans the graph.</p></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.Events"></a>Events</h3></div></div>

<div class="CEvent"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.mxEvent.PAN_START"></a>mxEvent.<wbr>PAN_START</h3><div class=CBody><p>Fires when the panning handler changes its &lt;active&gt; state to true.&nbsp; The &lt;code&gt;event&lt;/code&gt; property contains the corresponding <a href="../util/mxMouseEvent-js.html#mxMouseEvent" class=LClass id=link45 onMouseOver="ShowTip(event, 'tt25', 'link45')" onMouseOut="HideTip('tt25')">mxMouseEvent</a>.</p></div></div></div>

<div class="CEvent"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.mxEvent.PAN"></a>mxEvent.PAN</h3><div class=CBody><p>Fires while handle is processing events.&nbsp; The &lt;code&gt;event&lt;/code&gt; property contains the corresponding <a href="../util/mxMouseEvent-js.html#mxMouseEvent" class=LClass id=link46 onMouseOver="ShowTip(event, 'tt25', 'link46')" onMouseOut="HideTip('tt25')">mxMouseEvent</a>.</p></div></div></div>

<div class="CEvent"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.mxEvent.PAN_END"></a>mxEvent.<wbr>PAN_END</h3><div class=CBody><p>Fires when the panning handler changes its &lt;active&gt; state to false.&nbsp; The &lt;code&gt;event&lt;/code&gt; property contains the corresponding <a href="../util/mxMouseEvent-js.html#mxMouseEvent" class=LClass id=link47 onMouseOver="ShowTip(event, 'tt25', 'link47')" onMouseOut="HideTip('tt25')">mxMouseEvent</a>.</p></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.Variables"></a>Variables</h3></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.graph"></a>graph</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.graph</td></tr></table></blockquote><p>Reference to the enclosing <a href="../view/mxGraph-js.html#mxGraph" class=LClass id=link48 onMouseOver="ShowTip(event, 'tt3', 'link48')" onMouseOut="HideTip('tt3')">mxGraph</a>.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.useLeftButtonForPanning"></a>useLeftButtonForPanning</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.useLeftButtonForPanning</td></tr></table></blockquote><p>Specifies if panning should be active for the left mouse button.&nbsp; Setting this to true may conflict with <a href="mxRubberband-js.html#mxRubberband" class=LClass id=link49 onMouseOver="ShowTip(event, 'tt36', 'link49')" onMouseOut="HideTip('tt36')">mxRubberband</a>.&nbsp; Default is false.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.usePopupTrigger"></a>usePopupTrigger</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.usePopupTrigger</td></tr></table></blockquote><p>Specifies if <a href="../util/mxEvent-js.html#mxEvent.isPopupTrigger" class=LFunction id=link50 onMouseOver="ShowTip(event, 'tt6', 'link50')" onMouseOut="HideTip('tt6')">mxEvent.isPopupTrigger</a> should also be used for panning.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.ignoreCell"></a>ignoreCell</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.ignoreCell</td></tr></table></blockquote><p>Specifies if panning should be active even if there is a cell under the mousepointer.&nbsp; Default is false.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.previewEnabled"></a>previewEnabled</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.previewEnabled</td></tr></table></blockquote><p>Specifies if the panning should be previewed.&nbsp; Default is true.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.useGrid"></a>useGrid</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.useGrid</td></tr></table></blockquote><p>Specifies if the panning steps should be aligned to the grid size.&nbsp; Default is false.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.panningEnabled"></a>panningEnabled</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.panningEnabled</td></tr></table></blockquote><p>Specifies if panning should be enabled.&nbsp; Default is true.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.pinchEnabled"></a>pinchEnabled</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.pinchEnabled</td></tr></table></blockquote><p>Specifies if pinch gestures should be handled as zoom.&nbsp; Default is true.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.maxScale"></a>maxScale</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.maxScale</td></tr></table></blockquote><p>Specifies the maximum scale.&nbsp; Default is 8.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.minScale"></a>minScale</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.minScale</td></tr></table></blockquote><p>Specifies the minimum scale.&nbsp; Default is 0.01.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.dx"></a>dx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.dx</td></tr></table></blockquote><p>Holds the current horizontal offset.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.dy"></a>dy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.dy</td></tr></table></blockquote><p>Holds the current vertical offset.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.startX"></a>startX</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.startX</td></tr></table></blockquote><p>Holds the x-coordinate of the start point.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.startY"></a>startY</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.startY</td></tr></table></blockquote><p>Holds the y-coordinate of the start point.</p></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.Functions"></a>Functions</h3></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.isActive"></a>isActive</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.isActive = function()</td></tr></table></blockquote><p>Returns true if the handler is currently active.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.isPanningEnabled"></a>isPanningEnabled</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.isPanningEnabled = function()</td></tr></table></blockquote><p>Returns <a href="#mxPanningHandler.panningEnabled" class=LVariable id=link51 onMouseOver="ShowTip(event, 'tt10', 'link51')" onMouseOut="HideTip('tt10')">panningEnabled</a>.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.setPanningEnabled"></a>setPanningEnabled</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.setPanningEnabled = function(</td><td class="PParameter  prettyprint " nowrap>value</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets <a href="#mxPanningHandler.panningEnabled" class=LVariable id=link52 onMouseOver="ShowTip(event, 'tt10', 'link52')" onMouseOut="HideTip('tt10')">panningEnabled</a>.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.isPinchEnabled"></a>isPinchEnabled</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.isPinchEnabled = function()</td></tr></table></blockquote><p>Returns <a href="#mxPanningHandler.pinchEnabled" class=LVariable id=link53 onMouseOver="ShowTip(event, 'tt11', 'link53')" onMouseOut="HideTip('tt11')">pinchEnabled</a>.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.setPinchEnabled"></a>setPinchEnabled</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.setPinchEnabled = function(</td><td class="PParameter  prettyprint " nowrap>value</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Sets <a href="#mxPanningHandler.pinchEnabled" class=LVariable id=link54 onMouseOver="ShowTip(event, 'tt11', 'link54')" onMouseOut="HideTip('tt11')">pinchEnabled</a>.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.isPanningTrigger"></a>isPanningTrigger</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.isPanningTrigger = function(</td><td class="PParameter  prettyprint " nowrap>me</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns true if the given event is a panning trigger for the optional given cell.&nbsp; This returns true if control-shift is pressed or if <a href="#mxPanningHandler.usePopupTrigger" class=LVariable id=link55 onMouseOver="ShowTip(event, 'tt5', 'link55')" onMouseOut="HideTip('tt5')">usePopupTrigger</a> is true and the event is a popup trigger.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.isForcePanningEvent"></a>isForcePanningEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.isForcePanningEvent = function(</td><td class="PParameter  prettyprint " nowrap>me</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Returns true if the given <a href="../util/mxMouseEvent-js.html#mxMouseEvent" class=LClass id=link56 onMouseOver="ShowTip(event, 'tt25', 'link56')" onMouseOut="HideTip('tt25')">mxMouseEvent</a> should start panning.&nbsp; This implementation always returns true if <a href="#mxPanningHandler.ignoreCell" class=LVariable id=link57 onMouseOver="ShowTip(event, 'tt7', 'link57')" onMouseOut="HideTip('tt7')">ignoreCell</a> is true or for multi touch events.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.mouseDown"></a>mouseDown</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.mouseDown = function(</td><td class="PParameter  prettyprint " nowrap>sender,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>me</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Handles the event by initiating the panning.&nbsp; By consuming the event all subsequent events of the gesture are redirected to this handler.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.start"></a>start</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.start = function(</td><td class="PParameter  prettyprint " nowrap>me</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Starts panning at the given event.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.consumePanningTrigger"></a>consumePanningTrigger</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.consumePanningTrigger = function(</td><td class="PParameter  prettyprint " nowrap>me</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Consumes the given <a href="../util/mxMouseEvent-js.html#mxMouseEvent" class=LClass id=link58 onMouseOver="ShowTip(event, 'tt25', 'link58')" onMouseOut="HideTip('tt25')">mxMouseEvent</a> if it was a panning trigger in <a href="#mxPanningHandler.mouseDown" class=LFunction id=link59 onMouseOver="ShowTip(event, 'tt26', 'link59')" onMouseOut="HideTip('tt26')">mouseDown</a>.&nbsp; The default is to invoke <a href="../util/mxMouseEvent-js.html#mxMouseEvent.consume" class=LFunction id=link60 onMouseOver="ShowTip(event, 'tt37', 'link60')" onMouseOut="HideTip('tt37')">mxMouseEvent.consume</a>.&nbsp; Note that this will block any further event processing.&nbsp; If you haven&rsquo;t disabled built-in context menus and require immediate selection of the cell on mouseDown in Safari and/or on the Mac, then use the following code:</p><blockquote><pre class="prettyprint">mxPanningHandler.prototype.consumePanningTrigger = function(me)
{
  if (me.evt.preventDefault)
  {
    me.evt.preventDefault();
  }

  // Stops event processing in IE
  me.evt.returnValue = false;

  // Sets local consumed state
  if (!mxClient.IS_SF &amp;&amp; !mxClient.IS_MAC)
  {
    me.consumed = true;
  }
};</pre></blockquote></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.mouseMove"></a>mouseMove</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.mouseMove = function(</td><td class="PParameter  prettyprint " nowrap>sender,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>me</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Handles the event by updating the panning on the graph.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.mouseUp"></a>mouseUp</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.mouseUp = function(</td><td class="PParameter  prettyprint " nowrap>sender,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>me</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Handles the event by setting the translation on the view or showing the popupmenu.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.zoomGraph"></a>zoomGraph</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.zoomGraph = function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Zooms the graph to the given value and consumed the event if needed.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.reset"></a>reset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.reset = function()</td></tr></table></blockquote><p>Resets the state of this handler.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.panGraph"></a>panGraph</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.panGraph = function(</td><td class="PParameter  prettyprint " nowrap>dx,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dy</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Pans <a href="#mxPanningHandler.graph" class=LVariable id=link61 onMouseOver="ShowTip(event, 'tt2', 'link61')" onMouseOut="HideTip('tt2')">graph</a> by the given amount.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxPanningHandler.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.destroy = function()</td></tr></table></blockquote><p>Destroys the handler and all its resources and DOM nodes.</p></div></div></div>

</div><!--Content-->


<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->


<div id=Menu><div class=MEntry><div class=MFile><a href="../index-txt.html">API Specification</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Editor</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../editor/mxDefaultKeyHandler-js.html">mxDefaultKeyHandler</a></div></div><div class=MEntry><div class=MFile><a href="../editor/mxDefaultPopupMenu-js.html">mxDefaultPopupMenu</a></div></div><div class=MEntry><div class=MFile><a href="../editor/mxDefaultToolbar-js.html">mxDefaultToolbar</a></div></div><div class=MEntry><div class=MFile><a href="../editor/mxEditor-js.html">mxEditor</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Handler</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="mxCellHighlight-js.html">mxCellHighlight</a></div></div><div class=MEntry><div class=MFile><a href="mxCellMarker-js.html">mxCellMarker</a></div></div><div class=MEntry><div class=MFile><a href="mxCellTracker-js.html">mxCellTracker</a></div></div><div class=MEntry><div class=MFile><a href="mxConnectionHandler-js.html">mxConnectionHandler</a></div></div><div class=MEntry><div class=MFile><a href="mxConstraintHandler-js.html">mxConstraintHandler</a></div></div><div class=MEntry><div class=MFile><a href="mxEdgeHandler-js.html">mxEdgeHandler</a></div></div><div class=MEntry><div class=MFile><a href="mxEdgeSegmentHandler-js.html">mxEdgeSegmentHandler.js</a></div></div><div class=MEntry><div class=MFile><a href="mxElbowEdgeHandler-js.html">mxElbowEdgeHandler</a></div></div><div class=MEntry><div class=MFile><a href="mxGraphHandler-js.html">mxGraphHandler</a></div></div><div class=MEntry><div class=MFile><a href="mxHandle-js.html">mxHandle</a></div></div><div class=MEntry><div class=MFile><a href="mxKeyHandler-js.html">mxKeyHandler</a></div></div><div class=MEntry><div class=MFile id=MSelected>mxPanningHandler</div></div><div class=MEntry><div class=MFile><a href="mxPopupMenuHandler-js.html">mxPopupMenuHandler</a></div></div><div class=MEntry><div class=MFile><a href="mxRubberband-js.html">mxRubberband</a></div></div><div class=MEntry><div class=MFile><a href="mxSelectionCellsHandler-js.html">mxSelectionCellsHandler</a></div></div><div class=MEntry><div class=MFile><a href="mxTooltipHandler-js.html">mxTooltipHandler</a></div></div><div class=MEntry><div class=MFile><a href="mxVertexHandler-js.html">mxVertexHandler</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Io</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../io/mxCellCodec-js.html">mxCellCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxChildChangeCodec-js.html">mxChildChangeCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxCodec-js.html">mxCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxCodecRegistry-js.html">mxCodecRegistry</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxDefaultKeyHandlerCodec-js.html">mxDefaultKeyHandlerCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxDefaultPopupMenuCodec-js.html">mxDefaultPopupMenuCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxDefaultToolbarCodec-js.html">mxDefaultToolbarCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxEditorCodec-js.html">mxEditorCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxGenericChangeCodec-js.html">mxGenericChangeCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxGraphCodec-js.html">mxGraphCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxGraphViewCodec-js.html">mxGraphViewCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxModelCodec-js.html">mxModelCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxObjectCodec-js.html">mxObjectCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxRootChangeCodec-js.html">mxRootChangeCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxStylesheetCodec-js.html">mxStylesheetCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxTerminalChangeCodec-js.html">mxTerminalChangeCodec</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent7')">Layout</a><div class=MGroupContent id=MGroupContent7><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent6')">Hierarchical</a><div class=MGroupContent id=MGroupContent6><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Model</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../layout/hierarchical/model/mxGraphAbstractHierarchyCell-js.html">mxGraphAbstractHierarchyCell</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/model/mxGraphHierarchyEdge-js.html">mxGraphHierarchyEdge</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/model/mxGraphHierarchyModel-js.html">mxGraphHierarchyModel</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/model/mxGraphHierarchyNode-js.html">mxGraphHierarchyNode</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/model/mxSwimlaneModel-js.html">mxSwimlaneModel</a></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/mxHierarchicalLayout-js.html">mxHierarchicalLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/mxSwimlaneLayout-js.html">mxSwimlaneLayout</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Stage</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MFile><a href="../layout/hierarchical/stage/mxCoordinateAssignment-js.html">mxCoordinateAssignment</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/stage/mxHierarchicalLayoutStage-js.html">mxHierarchicalLayoutStage</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/stage/mxMedianHybridCrossingReduction-js.html">mxMedianHybridCrossingReduction</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/stage/mxMinimumCycleRemover-js.html">mxMinimumCycleRemover</a></div></div><div class=MEntry><div class=MFile><a href="../layout/hierarchical/stage/mxSwimlaneOrdering-js.html">mxSwimlaneOrdering</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../layout/mxCircleLayout-js.html">mxCircleLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxCompactTreeLayout-js.html">mxCompactTreeLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxCompositeLayout-js.html">mxCompositeLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxEdgeLabelLayout-js.html">mxEdgeLabelLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxFastOrganicLayout-js.html">mxFastOrganicLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxGraphLayout-js.html">mxGraphLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxParallelEdgeLayout-js.html">mxParallelEdgeLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxPartitionLayout-js.html">mxPartitionLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxRadialTreeLayout-js.html">mxRadialTreeLayout</a></div></div><div class=MEntry><div class=MFile><a href="../layout/mxStackLayout-js.html">mxStackLayout</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent8')">Model</a><div class=MGroupContent id=MGroupContent8><div class=MEntry><div class=MFile><a href="../model/mxCell-js.html">mxCell</a></div></div><div class=MEntry><div class=MFile><a href="../model/mxCellPath-js.html">mxCellPath</a></div></div><div class=MEntry><div class=MFile><a href="../model/mxGeometry-js.html">mxGeometry</a></div></div><div class=MEntry><div class=MFile><a href="../model/mxGraphModel-js.html">mxGraphModel</a></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../mxClient-js.html">mxClient</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent9')">Shape</a><div class=MGroupContent id=MGroupContent9><div class=MEntry><div class=MFile><a href="../shape/mxActor-js.html">mxActor</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxArrow-js.html">mxArrow</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxArrowConnector-js.html">mxArrowConnector</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxCloud-js.html">mxCloud</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxConnector-js.html">mxConnector</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxCylinder-js.html">mxCylinder</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxDoubleEllipse-js.html">mxDoubleEllipse</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxEllipse-js.html">mxEllipse</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxHexagon-js.html">mxHexagon</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxImageShape-js.html">mxImageShape</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxLabel-js.html">mxLabel</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxLine-js.html">mxLine</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxMarker-js.html">mxMarker</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxPolyline-js.html">mxPolyline</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxRectangleShape-js.html">mxRectangleShape</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxRhombus-js.html">mxRhombus</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxShape-js.html">mxShape</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxStencil-js.html">mxStencil</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxStencilRegistry-js.html">mxStencilRegistry</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxSwimlane-js.html">mxSwimlane</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxText-js.html">mxText</a></div></div><div class=MEntry><div class=MFile><a href="../shape/mxTriangle-js.html">mxTriangle</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent10')">Util</a><div class=MGroupContent id=MGroupContent10><div class=MEntry><div class=MFile><a href="../util/mxAbstractCanvas2D-js.html">mxAbstractCanvas2D</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxAnimation-js.html">mxAnimation</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxAutoSaveManager-js.html">mxAutoSaveManager</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxClipboard-js.html">mxClipboard</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxConstants-js.html">mxConstants</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxDictionary-js.html">mxDictionary</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxDivResizer-js.html">mxDivResizer</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxDragSource-js.html">mxDragSource</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxEffects-js.html">mxEffects</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxEvent-js.html">mxEvent</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxEventObject-js.html">mxEventObject</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxEventSource-js.html">mxEventSource</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxForm-js.html">mxForm</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxGuide-js.html">mxGuide</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxImage-js.html">mxImage</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxImageBundle-js.html">mxImageBundle</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxImageExport-js.html">mxImageExport</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxLog-js.html">mxLog</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxMorphing-js.html">mxMorphing</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxMouseEvent-js.html">mxMouseEvent</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxObjectIdentity-js.html">mxObjectIdentity</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxPanningManager-js.html">mxPanningManager</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxPoint-js.html">mxPoint</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxPopupMenu-js.html">mxPopupMenu</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxRectangle-js.html">mxRectangle</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxResources-js.html">mxResources</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxSvgCanvas2D-js.html">mxSvgCanvas2D</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxToolbar-js.html">mxToolbar</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxUndoableEdit-js.html">mxUndoableEdit</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxUndoManager-js.html">mxUndoManager</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxUrlConverter-js.html">mxUrlConverter</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxUtils-js.html">mxUtils</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxVmlCanvas2D-js.html">mxVmlCanvas2D</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxWindow-js.html">mxWindow</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxXmlCanvas2D-js.html">mxXmlCanvas2D</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxXmlRequest-js.html">mxXmlRequest</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent11')">View</a><div class=MGroupContent id=MGroupContent11><div class=MEntry><div class=MFile><a href="../view/mxCellEditor-js.html">mxCellEditor</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxCellOverlay-js.html">mxCellOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxCellRenderer-js.html">mxCellRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxCellState-js.html">mxCellState</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxCellStatePreview-js.html">mxCellStatePreview</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxConnectionConstraint-js.html">mxConnectionConstraint</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxEdgeStyle-js.html">mxEdgeStyle</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxGraph-js.html">mxGraph</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxGraphSelectionModel-js.html">mxGraphSelectionModel</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxGraphView-js.html">mxGraphView</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxLayoutManager-js.html">mxLayoutManager</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxMultiplicity-js.html">mxMultiplicity</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxOutline-js.html">mxOutline</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxPerimeter-js.html">mxPerimeter</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxPrintPreview-js.html">mxPrintPreview</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxStyleRegistry-js.html">mxStyleRegistry</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxStylesheet-js.html">mxStylesheet</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxSwimlaneManager-js.html">mxSwimlaneManager</a></div></div><div class=MEntry><div class=MFile><a href="../view/mxTemporaryCellStates-js.html">mxTemporaryCellStates</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent12')">Index</a><div class=MGroupContent id=MGroupContent12><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Cookies.html">Cookies</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Events.html">Events</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Cookies">Cookies</option><option value="Events">Events</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([2], 13);// --></script></div><!--Menu-->



<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CClass>Basic popup menu. </div></div><div class=CToolTip id="tt2"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.graph</td></tr></table></blockquote>Reference to the enclosing mxGraph.</div></div><div class=CToolTip id="tt3"><div class=CClass>Extends mxEventSource to implement a graph component for the browser. </div></div><div class=CToolTip id="tt4"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.useLeftButtonForPanning</td></tr></table></blockquote>Specifies if panning should be active for the left mouse button. </div></div><div class=CToolTip id="tt5"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.usePopupTrigger</td></tr></table></blockquote>Specifies if mxEvent.isPopupTrigger should also be used for panning.</div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>isPopupTrigger: function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Returns true if the event is a popup trigger. </div></div><div class=CToolTip id="tt7"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.ignoreCell</td></tr></table></blockquote>Specifies if panning should be active even if there is a cell under the mousepointer. </div></div><div class=CToolTip id="tt8"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.previewEnabled</td></tr></table></blockquote>Specifies if the panning should be previewed. </div></div><div class=CToolTip id="tt9"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.useGrid</td></tr></table></blockquote>Specifies if the panning steps should be aligned to the grid size. </div></div><div class=CToolTip id="tt10"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.panningEnabled</td></tr></table></blockquote>Specifies if panning should be enabled. </div></div><div class=CToolTip id="tt11"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.pinchEnabled</td></tr></table></blockquote>Specifies if pinch gestures should be handled as zoom. </div></div><div class=CToolTip id="tt12"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.maxScale</td></tr></table></blockquote>Specifies the maximum scale. </div></div><div class=CToolTip id="tt13"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.minScale</td></tr></table></blockquote>Specifies the minimum scale. </div></div><div class=CToolTip id="tt14"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.dx</td></tr></table></blockquote>Holds the current horizontal offset.</div></div><div class=CToolTip id="tt15"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.dy</td></tr></table></blockquote>Holds the current vertical offset.</div></div><div class=CToolTip id="tt16"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.startX</td></tr></table></blockquote>Holds the x-coordinate of the start point.</div></div><div class=CToolTip id="tt17"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.startY</td></tr></table></blockquote>Holds the y-coordinate of the start point.</div></div><div class=CToolTip id="tt18"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.isActive = function()</td></tr></table></blockquote>Returns true if the handler is currently active.</div></div><div class=CToolTip id="tt19"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.isPanningEnabled = function()</td></tr></table></blockquote>Returns panningEnabled.</div></div><div class=CToolTip id="tt20"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.setPanningEnabled = function(</td><td class="PParameter  prettyprint " nowrap>value</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Sets panningEnabled.</div></div><div class=CToolTip id="tt21"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.isPinchEnabled = function()</td></tr></table></blockquote>Returns pinchEnabled.</div></div><div class=CToolTip id="tt22"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.setPinchEnabled = function(</td><td class="PParameter  prettyprint " nowrap>value</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Sets pinchEnabled.</div></div><div class=CToolTip id="tt23"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.isPanningTrigger = function(</td><td class="PParameter  prettyprint " nowrap>me</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Returns true if the given event is a panning trigger for the optional given cell. </div></div><div class=CToolTip id="tt24"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.isForcePanningEvent = function(</td><td class="PParameter  prettyprint " nowrap>me</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Returns true if the given mxMouseEvent should start panning. </div></div><div class=CToolTip id="tt25"><div class=CClass>Base class for all mouse events in mxGraph. </div></div><div class=CToolTip id="tt26"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.mouseDown = function(</td><td class="PParameter  prettyprint " nowrap>sender,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>me</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Handles the event by initiating the panning. </div></div><div class=CToolTip id="tt27"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.start = function(</td><td class="PParameter  prettyprint " nowrap>me</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Starts panning at the given event.</div></div><div class=CToolTip id="tt28"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.consumePanningTrigger = function(</td><td class="PParameter  prettyprint " nowrap>me</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Consumes the given mxMouseEvent if it was a panning trigger in mouseDown. </div></div><div class=CToolTip id="tt29"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.mouseMove = function(</td><td class="PParameter  prettyprint " nowrap>sender,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>me</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Handles the event by updating the panning on the graph.</div></div><div class=CToolTip id="tt30"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.mouseUp = function(</td><td class="PParameter  prettyprint " nowrap>sender,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>me</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Handles the event by setting the translation on the view or showing the popupmenu.</div></div><div class=CToolTip id="tt31"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.zoomGraph = function(</td><td class="PParameter  prettyprint " nowrap>evt</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Zooms the graph to the given value and consumed the event if needed.</div></div><div class=CToolTip id="tt32"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.reset = function()</td></tr></table></blockquote>Resets the state of this handler.</div></div><div class=CToolTip id="tt33"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxPanningHandler.prototype.panGraph = function(</td><td class="PParameter  prettyprint " nowrap>dx,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>dy</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Pans graph by the given amount.</div></div><div class=CToolTip id="tt34"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">mxPanningHandler.prototype.destroy = function()</td></tr></table></blockquote>Destroys the handler and all its resources and DOM nodes.</div></div><div class=CToolTip id="tt35"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxGraph.prototype.setPanning = function(</td><td class="PParameter  prettyprint " nowrap>enabled</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Specifies if panning should be enabled. </div></div><div class=CToolTip id="tt36"><div class=CClass>Event handler that selects rectangular regions. </div></div><div class=CToolTip id="tt37"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>mxMouseEvent.prototype.consume = function(</td><td class="PParameter  prettyprint " nowrap>preventDefault</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Sets consumed to true and invokes preventDefault on the native event if such a method is defined. </div></div><!--END_ND_TOOLTIPS-->




<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>


<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>